In today's media age, more and more people are beginning to use personal computers, rather than a professional printing service, to produce high-quality publications and other previously professionally designed documents. Current desktop publishing software automates a large part of the process involved in the creation of professional-quality publications. Desktop publishing software typically includes templates of professionally designed publications, ranging from newsletters to web-sites to greeting cards. Customized publications may be created from these templates by inserting text, graphics, and other multimedia applications into the designated or appropriate places in the templates. Publications can also be created from scratch by reserving areas for element types, such as text, and filling those areas with content. These locations in the templates for the input of text are referred to herein as text frames, and they are also commonly known as input fields, text boxes, and parameters.
The process of adjusting text in a text frame, such that the text generally fits in an acceptable manner within the text frame, is referred to as copyfitting. A problem associated with copyfitting is that the area or space of the text frame that is reserved for input of the text generally should not be altered until other design options have been eliminated. In particular, the area of the text frame usually cannot be changed without also affecting the original document template design. Typically, efforts are made to avoid changing a document to accommodate a single element, because such change may negatively affect the aesthetic appeal of the overall design. But more seriously, such change may cause an automated template design to be inoperative. Other problems also may result from changes to the original document design.
If the area of a text frame cannot be changed to accommodate text for input therein, then other steps may be taken to copyfit the text into the text frame. For example, text that is to be input into a text frame may be larger than the space provided in the text frame. This is referred to as an overflow problem or simply as overflow. Two options are typically available to ameliorate the overflow problem. On the one hand, the size of the text may be decreased to fit the text frame. On the other hand, the text frame may be enlarged to fit the text. As noted above, this second option is generally avoided because changing the size of a text frame may negatively affect the original template document design. As another example, text that is to be input into a text frame may be small compared to the space provided in the text frame. This is referred to as an underflow problem or simply as underflow. As with the overflow problem, two options are typically available to ameliorate the underflow problem. On the one hand, the size of the text may be increased to fit the text frame. On the other hand, the text frame may be decreased to fit the text. As noted above, this second option is generally avoided because changing the size of a text frame may negatively affect the original document design. Thus, typical desktop publishing software attempts to ameliorate overflow or underflow problems by allowing for the size of the text to be increased or decreased, respectively, so that the text is better accommodated in a text frame.
Generally, desktop software allows for the adjustment of text size in copyfitting by allowing a user to adjust the text size so that it fits better in a text frame. To adjust the text size, the user provides keyboard or other input through the computer system so that the size of the text changes. This type of user input is referred to herein as manual input because the user manually (or through some other process) provides information to the desktop publishing software that the size of the editable text is to be changed. Further, the user must provide additional input as to the new size to which the editable text is to be changed. After the user provides this input, the desktop publishing software causes the text to change to the new size. The text in its new size typically is then displayed on a computer screen so that the user may see the effect of the change in size of the text. If the user is still dissatisfied with the size of the text relative to the text frame, the user may repeat the manual input process until an acceptable size is reached. An example of a manual input copyfitting system is embodied in a software package called "Home Publisher Version 2.1" by Adobe Systems Incorporated of San Jose, Calif.
A goal of desktop publishing software is to automate the creation of a publication as much as possible for the user. Thus, it is counterproductive to require the user of the software to provide manual input so as to alter the text size. Moreover, it is even more counterproductive to require the user to have to repeat a manual input process and to keep repeating the process until some acceptable size is reached.
The counterproductivity and other problems with manual input in copyfitting have been recognized and attempts have been made to solve these problems through the provision of automatic copyfitting. Generally, automatic or automated copyfitting requires little if any manual input from a user. A particular method of automatic copyfitting converts the editable text into a bitmap image. This bitmap image may be scaled up or down to cause the bitmap image to fit into the space of a text frame. To increase the size of a character of text, the bitmap image of the character is scaled by a desired percentage. The enlarged bitmap image, however, has a poor aesthetic quality due to aliasing. Aliasing is a problem common to bitmaps. As an alternative, the bitmap image may be created in a size that is much larger than the desired enlarged text size. Then the bitmap image is scaled down to reach the desired enlarged text size. Although this alternative may be relatively effective to avoid aliasing, the alternative solution requires a lot of processing in that at least three generally complicated methods must be carried out in this alternative. In other words, the bitmap image must first be created, the bitmap image must then be enlarged, and finally, the bitmap image must be scaled down to the appropriate size. This much processing often renders this alternative an impractical solution to the problems of copyfitting.
Another particular method of automatic copyfitting is incorporated as a feature in the "WORDART" software produced and distributed by Microsoft Corporation of Redmond, Wash. Similar to the bitmap image mentioned above, "WORDART" converts the text into images that represent outlines of the characters. "WORDART" takes advantage of the fact that editable text fonts are a collection of curves. These curves may be described by equations and encoded in a computer's memory. "WORDART" retrieves these equations from the API of the operating system, constructs outlined images of the text, and scales the outlined images to a desired text size. Then, the scaled outlined images are rasterized to the best available resolution for display on the computer screen.
The method employed by "WORDART" produces images of better quality than does the method relating to the bitmap image. But the method employed by "WordArt" shares a drawback with the method of the bitmap image. The method employed by "WORDART" involves a high degree of complexity and requires a lot of processing. A high degree of processing may render the method employed by the "WORDART" software an impractical solution to the problems of copyfitting.
In addition, both the bitmap image method and the method employed by "WORDART" pose additional problems such as user interface problems. In particular, as noted, both methods provide the text to the user as an image. When the text is provided as a bitmap or an outlined image, the text may not be edited through the use of a standard text editing mode. Furthermore, a body of text containing multiple lines requires the user to manually add breaks between lines, instead of the common occurrence of automatic linebreaking. If any changes to the text, or to the breaks between characters in the text, are desired, a special and distinct text editing mode must be invoked that will allow the user to edit the image. In other words, the user is required to switch back and forth between a standard text editing mode to edit editable text and a special text editing mode to edit the bitmap or outlined image of the text. Such back and forth switching is tedious and irritating to most users. In addition, the requirement of switching back and forth between two different text editing modes engenders other problems. For example, in the method employed by "WORDART",the outlined image has nearly the same appearance as the editable text. Users often become confused as to which of the two different editing modes is applicable in any particular editing situation. Further, users often become frustrated by having to learn and choose between two different text editing techniques. Thus, the bitmap image method and the method used by "WordArt" share the problem of processing complexity and user interface problems related to the use of different text editing modes depending upon the state of the text in the copyfitting process.
Still another method of automatic copyfitting is referred to as a page-level (or document-level) shrink-to-fit method. As the names imply, this method does not directly manipulate the size of editable text. Rather, the size of the entire page or document is altered, so as to reduce the number of pages in a printed document. By way of illustration, a user may instruct a text editing program to scale a document containing 1.25 pages down to a 1 page document. This scaling process has the necessary effect of enlarging or reducing the size of the text included within the document. This shrink-to-fit method is generally undesirable in desktop publishing because such a method alters the predetermined scale of the professionally designed elements in a document.
Yet another method of automatic copyfitting is referred to as font size manipulation in a controlled editing environment. By this method, the user is restricted from using full editing capabilities, so that the effects of homogeneous font size changes can be cleanly calculated. This method actually alters the size of the text without the need to convert it to an image. However, the user is forced to edit the text in a special controlled editing mode. In order to view the text, the user must switch to the standard text editing mode. After viewing, if the user determines the changes were insufficient, then the user switches to the special controlled editing mode to do the editing. Then, after editing, the user must switch again to the standard text editing mode in order to view the text. Thus, the user is denied the convenience of immediate feedback, which is provided when editable text is edited in a standard text editing mode. The user is also inconvenienced by the necessity of having to switch back and forth between editing and viewing. Copyfitting methods of this type also typically restrict the user from having a variety of colors, font faces, and other properties in a body of text.
An example of font size manipulation in a controlled editing environment is incorporated in a software package called "iPublish 2.0" by Design Intelligence, Inc. of Seattle, Wash. This method involves detecting when there is too much text to fit in a text frame, and automatically reducing the size of the text to fit in the frame. This method prevents the user from ever changing the size of a text frame, regardless of how much text is desired. This method does not allow a body of text to have more than one color, font face or font size. This method also tends to leave text in an underflow condition, where text does not substantially fill the space in a text frame.
Therefore, the problem of copyfitting when the space in a text frame cannot be altered has not been adequately addressed by the methods of automatic copyfitting discussed above. All of these methods have drawbacks that cause them to be less than desirable for use in high quality automated desktop publishing software. In addition to the drawbacks mentioned above, many of these methods require the user to perform extra steps to accomplish the copyfitting. For example, a user may have to provide manual input such as the use of pull down menus or other tools in order to reach or initiate a copyfitting feature of the desktop publishing software which would aid in the copyfitting process, such as a text size control. The text may need to be rewritten to accommodate the automatic copyfitting method. Further steps may be necessary to work through the copyfitting procedures. This required user-interaction takes time to learn and to execute. In addition, this required user-interaction belies the supposedly automatic nature of automatic copyfitting features of the methods discussed above.
Thus, there remains a need for automated copyfitting that is capable of fitting editable text into a text frame so that the editable text substantially occupies the text frame without overflow or underflow, and that involves only a single text editing mode for all text editing operations.
There also remains a need for automated copyfitting that adjusts the size of editable text in a text frame so that it is aesthetically acceptable and carries out such adjustment without the need for manual input or any other type of interaction from the user.
There further remains a need for automated copyfitting that adjusts the size of editable text in a text frame without prohibiting frame resizing or the usage of mixed text properties such as color, font face and font size.